home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung 2 / Power-Programmierung CD 2 (Tewi)(1994).iso / gnu / djgpp / contrib / dvx / inc / x11 / xaw / paned.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-07-15  |  8.0 KB  |  222 lines

  1. /*
  2. * $XConsortium: Paned.h,v 1.8 89/10/04 19:35:43 kit Exp $
  3. */
  4.  
  5.  
  6. /***********************************************************
  7. Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts,
  8. and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
  9.  
  10.                         All Rights Reserved
  11.  
  12. Permission to use, copy, modify, and distribute this software and its 
  13. documentation for any purpose and without fee is hereby granted, 
  14. provided that the above copyright notice appear in all copies and that
  15. both that copyright notice and this permission notice appear in 
  16. supporting documentation, and that the names of Digital or MIT not be
  17. used in advertising or publicity pertaining to distribution of the
  18. software without specific, written prior permission.  
  19.  
  20. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  21. ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
  22. DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
  23. ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  24. WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
  25. ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  26. SOFTWARE.
  27.  
  28. ******************************************************************/
  29.  
  30. /*
  31.  * Paned.h - Paned Composite Widget's public header file.
  32.  *
  33.  * Updated and significantly modifided from the Athena VPaned Widget.
  34.  *
  35.  * Date:    March 1, 1989
  36.  *
  37.  * By:      Chris D. Peterson
  38.  *          MIT X Consortium
  39.  *          kit@expo.lcs.mit.edu
  40.  */
  41.  
  42. #ifndef _XawPaned_h
  43. #define _XawPaned_h
  44.  
  45. #include <X11/Constraint.h>
  46.  
  47. /****************************************************************
  48.  *
  49.  * Vertical Paned Widget (SubClass of CompositeClass)
  50.  *
  51.  ****************************************************************/
  52.  
  53. /* RESOURCES:
  54.  
  55.  Name                 Class           RepType        Default Value
  56.  ----                 -----           -------        -------------
  57.  background             Background       Pixel        XtDefaultBackground
  58.  betweenCursor             Cursor               Cursor        **
  59.  border                 BorderColor       Pixel        XtDefaultForeground
  60.  borderWidth             BorderWidth       Dimension        1
  61.  cursor                 Cursor               Cursor        None
  62.  destroyCallback         Callback       Pointer        NULL
  63.  height                 Height               Dimension        0
  64.  gripIndent             GripIndent       Position        16
  65.  gripCursor             Cursor               Cursor        **
  66.  horizontalGripCursol    Cursor               Cursor        sb_h_double_arrow
  67.  horizontalBetweencursor Cursor               Cursor        sb_up_arrow
  68.  internalBorderColor     BorderColor       Pixel        XtDefaultForeground
  69.  internalBorderWidth     BorderWidth       Position        1
  70.  leftCursor             Cursor               Cursor        sb_left_arrow
  71.  lowerCursor             Cursor               Cursor        sb_down_arrow
  72.  mappedWhenManaged       MappedWhenManaged Boolean        True
  73.  orientation             Orientation       XtOrientation    XtorientVertical
  74.  refigureMode             Boolean       Boolean        On
  75.  rightCursor             Cursor               Cursor           sb_right_arrow
  76.  sensitive             Sensitive       Boolean        True
  77.  upperCursor             Cursor               Cursor        sb_up_arrow
  78.  verticalBetweenCursor   Cursor               Cursor           sb_left_arrow
  79.  verticalGripCursor      Cursor               Cursor           sb_v_double_arrow
  80.  width                 Width               Dimension        0
  81.  x                 Position       Position        0
  82.  y                 Position       Position            0
  83.  
  84. ** These resources now are set to the vertical or horizontal cursor
  85.    depending upon orientation, by default.  If a value is specified here
  86.    then that cursor will be used reguardless of orientation.
  87.  
  88.  
  89. CONSTRAINT RESOURCES:
  90.  
  91.  Name              Class        RepType        Default Value
  92.  ----              -----        -------        -------------
  93.  allowResize          Boolean            Boolean         False
  94.  max              Max            Dimension    unlimited
  95.  min              Min        Dimension    Grip Size
  96.  preferredPaneSize    PerferredPaneSize Dimension    PANED_ASK_CHILD
  97.  resizeToPreferred    Boolean        Boolean         False
  98.  showGrip          ShowGrip        Boolean        True
  99.  skipAdjust          Boolean            Boolean         False
  100.  
  101. */
  102.  
  103. #define PANED_ASK_CHILD 0
  104. #define PANED_GRIP_SIZE 0
  105.  
  106. /* New Fields */
  107. #define XtNallowResize "allowResize"
  108. #define XtNbetweenCursor "betweenCursor"
  109. #define XtNverticalBetweenCursor "verticalBetweenCursor"
  110. #define XtNhorizontalBetweenCursor "horizontalBetweenCursor"
  111. #define XtNgripCursor "gripCursor"
  112. #define XtNgripIndent "gripIndent"
  113. #define XtNhorizontalGripCursor "horizontalGripCursor"
  114. #define XtNinternalBorderColor "internalBorderColor"
  115. #define XtNinternalBorderWidth "internalBorderWidth"
  116. #define XtNleftCursor "leftCursor"
  117. #define XtNlowerCursor "lowerCursor"
  118. #define XtNrefigureMode "refigureMode"
  119. #define XtNposition "position"
  120. #define XtNmin "min"
  121. #define XtNmax "max"
  122. #define XtNpreferredPaneSize "preferredPaneSize"
  123. #define XtNresizeToPreferred "resizeToPreferred"
  124. #define XtNrightCursor "rightCursor"
  125. #define XtNshowGrip "showGrip"
  126. #define XtNskipAdjust "skipAdjust"
  127. #define XtNupperCursor "upperCursor"
  128. #define XtNverticalGripCursor "verticalGripCursor"
  129.  
  130. #define XtCGripIndent "GripIndent"
  131. #define XtCMin "Min"
  132. #define XtCMax "Max"
  133. #define XtCPreferredPaneSize "PreferredPaneSize"
  134. #define XtCShowGrip "ShowGrip"
  135.  
  136. /* Class record constant */
  137. extern WidgetClass panedWidgetClass;
  138.  
  139. #ifdef XAW_BC            /* for compatability only. */
  140.   extern WidgetClass vPanedWidgetClass;
  141. #endif
  142.  
  143. typedef struct _PanedClassRec    *PanedWidgetClass;
  144. typedef struct _PanedRec    *PanedWidget;
  145.  
  146. /************************************************************
  147.  *
  148.  *  Public Procedures 
  149.  *
  150.  ************************************************************/
  151.  
  152.  
  153. /*    Function Name: XawPanedSetMinMax
  154.  *    Description: Sets the min and max size for a pane.
  155.  *    Arguments: widget - the widget that is a child of the Paned widget.
  156.  *                 min, max - the new min and max size for the pane.
  157.  *    Returns: none.
  158.  */
  159.  
  160. extern void XawPanedSetMinMax();        /* widget, min, max */
  161.     /* Widget widget; */
  162.     /* int min, max; */
  163.  
  164. /*    Function Name: XawPanedGetMinMax
  165.  *    Description: Gets the min and max size for a pane.
  166.  *    Arguments: widget - the widget that is a child of the Paned widget.
  167.  ** RETURNED **    min, max - the current min and max size for the pane.
  168.  *    Returns: none.
  169.  */
  170.  
  171. extern void XawPanedGetMinMax(); /* widget, min, max */
  172.     /* Widget widget; */
  173.     /* int    *min, *max; */
  174.  
  175. /*    Function Name: XawPanedSetRefigureMode
  176.  *    Description: Allows a flag to be set the will inhibit 
  177.  *                   the paned widgets relayout routine.
  178.  *    Arguments: w - the paned widget.
  179.  *                 mode - if FALSE then inhibit refigure.
  180.  *    Returns: none.
  181.  */
  182.  
  183. extern void XawPanedSetRefigureMode();    /* w, mode */
  184.     /* Widget w; */
  185.     /* Boolean mode; */
  186.  
  187. /*    Function Name: XawPanedGetNumSub
  188.  *    Description: Returns the number of panes in the paned widget.
  189.  *    Arguments: w - the paned widget.
  190.  *    Returns: the number of panes in the paned widget.
  191.  */
  192.  
  193. extern int XawPanedGetNumSub();        /* w */
  194.     /* Widget w; */
  195.  
  196. /*    Function Name: XawPanedAllowResize
  197.  *    Description: Allows a flag to be set that determines if the paned
  198.  *                   widget will allow geometry requests from this child
  199.  *    Arguments: widget - a child of the paned widget.
  200.  *    Returns: none.
  201.  */
  202.  
  203. extern void XawPanedAllowResize();  /* widget, allow_resize */
  204.     /* Widget widget; */
  205.     /* Boolean allow_resize; */
  206.  
  207. #ifdef XAW_BC
  208. /*************************************************************
  209.  * For Compatibility only.                                   */
  210.  
  211. #define XtPanedSetMinMax        XawPanedSetMinMax
  212. #define XtPanedGetMinMax        XawPanedGetMinMax
  213. #define XtPanedGetNumSub        XawPanedGetNumSub
  214. #define XtPanedAllowResize      XawPanedAllowResize
  215. #define XtPanedSetRefigureMode  XawPanedSetRefigureMode
  216.  
  217. /*************************************************************/
  218. #endif /* XAW_BC */
  219.   
  220. #endif /* _XawPaned_h */
  221. /* DON'T ADD STUFF AFTER THIS #endif */
  222.